package day_04;

public class leetcode_9 {
    /**
     * 判断一个整数是否是回文数。回文数是指正序
     * （从左向右）和倒序（从右向左）读都是一样的整数。
     */
    public boolean isPalindrome(int x) {
        /*
        官方解
         */
        if(x<0 ||(x%10==0&&x!=0))
            return false;
        int num=0;
        while(x>num){
            num=num*10+x%10;
            x/=10;
        }
        return x==num||x==num/10;




        /*
        执行用时 :12 ms
        内存消耗 :38 MB
         */
       /* if (x<0)
            return false;
        int m=0;
        int n=x;
        while(x!=0){
            m=m*10+x%10;
            x=x/10;
        }
      return m==n;

        */



        /*
        执行用时 :59 ms
        内存消耗 :40.7 MB
         */
        /*
        if(x<0)
            return false;
        String F_num=String.valueOf(x);
        String T_nm=new StringBuffer(F_num).reverse().toString();
        if(F_num.equals(T_nm))
            return true;
        return false;
         */
    }
}
